Field
Aspects of the present invention generally relate to information processing apparatuses and methods of controlling an information processing apparatus.
Description of the Related Art
Conventionally, a function provided by an application running on an information processing apparatus (computer) is realized by arranging a control (user interface (UI) such as button, dropdown list, etc.) on a UI. However, as the number of functions is increased, there are cases where a large number of controls is arranged on the same screen, or controls having functions that are desired by an user are separately arranged. In these cases, it may take time for the user to find a control that has a desired function.
Meanwhile, there exists a function to customize controls on a UI by a user instruction. Specifically, edit controls (e.g., buttons, etc.) provided for executing edit commands (edit processing) can be arranged in positions desired by the user.
Further, Japanese Patent Application Laid-Open No. 11-312036 discusses a technique that each function to be used is associated with the level of importance to automatically arrange controls.
Further, there exists an application in which controls each providing a function are arranged together for each tab and then the controls to be displayed are changed according to a selected tab. With the application, a new control can be added to an existing tab, or a new tab can be created to arrange an arbitrary edit control therein in response to a user instruction.
Further, there exists an application in which a plurality of edit modes is shown in a single window and an edit screen which differs for each edit mode is switched over for display.
For example, there is a document editing application having a first edit mode for editing a document and a second edit mode for changing print settings. In the first edit mode for editing a document, one page of a document to be edited is displayed on a screen of an edit area so that contents of the displayed page of the document can be edited based on a user instruction. Further, in the second edit mode for changing print settings, a page of a document to be printed is displayed on a print preview screen so that the user can check the print state and change print settings such as a margin setting and sheet orientation. It is common for such an application including a plurality of edit modes to switch and display a UI as appropriate to each edit mode.
Further, in such an applications including a plurality of edit modes, there exists an edit command (edit control) that can be used only in a specific edit mode.
For example, in a case of using an edit command for changing print settings, if no print preview screen is displayed, it is difficult to visually recognize an item that has been changed. Thus, it is desirable to display an edit control for changing print settings only when a preview screen is displayed.
On the other hand, control for a function to add a drawing to a desired page in a document (e.g., a control for editing document contents such as an annotation function,) is desirably disabled while a print preview screen is displayed.
Meanwhile, in a case where the user is allowed to arbitrarily customize a control UI on a tab in an application including an edit command that can be used only in a specific edit mode and a shared command that can be used in a plurality of edit modes, the following issue arises.
For example, in a case where a plurality of controls for commands that are operable only in different modes from one another is arranged on the same tab, when an application is running in a certain mode, a control that is operable only in a different mode cannot be executed. In this case, in order to execute the command of the control that is operable only in the different mode, the user needs to actively change the mode.